// ==++==
//
//   
//    Copyright (c) 2006 Microsoft Corporation.  All rights reserved.
//   
//    The use and distribution terms for this software are contained in the file
//    named license.txt, which can be found in the root of this distribution.
//    By using this software in any fashion, you are agreeing to be bound by the
//    terms of this license.
//   
//    You must not remove this notice, or any other, from this software.
//   
//
// ==--==

using System;
using System.Reflection;

class List<T> { }

class M
{
  public static void Main()
  {
    Type ty = typeof(List<string>);
    Type[] inst = ty.GetGenericArguments();
    Type pty = ty.GetGenericTypeDefinition();
    Console.WriteLine("pty = " + pty.ToString());
    Console.WriteLine("inst = " + inst[0].ToString());
    Console.WriteLine(ty.HasGenericArguments);
  }
}